package com.eastfair.home.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.eastfair.boot.request.PageParams;
import com.eastfair.venueservice.dto.BondManageDTO;
import com.eastfair.venueservice.dto.ViolationRecordDTO;
import com.eastfair.venueservice.dto.ViolationRecordPageQuery;
import com.eastfair.venueservice.entity.ViolationRecord;
import com.eastfair.venueservice.vo.ViolationRecordVO;

/**
 * 违规记录 service.
 *
 * @Author lyw
 * @Date 2022 /9/13 20:24
 */
public interface HomeViolationRecordService {

    /**
     * 查询违规惩罚记录列表分页
     *
     * @param params the params
     * @return page
     */
    Page<ViolationRecordVO> queryViolationRecordList(PageParams<ViolationRecordDTO> params);

    /**
     * 查询违规惩罚记录详情
     *
     * @param violationRecordDTO the violation record dto
     * @return violation record vo
     */
    ViolationRecordVO getViolationRecord(ViolationRecordDTO violationRecordDTO);

    /**
     * 保存违规惩罚记录
     *
     * @param violationRecordDTO the violation record dto
     * @return boolean
     */
    boolean saveViolationRecord(ViolationRecordDTO violationRecordDTO);

    /**
     * 修改违规惩罚记录
     *
     * @param violationRecordDTO the violation record dto
     * @return boolean
     */
    boolean updateViolationRecord(ViolationRecordDTO violationRecordDTO);

    /**
     * 更新处罚扣款.
     *
     * @param violationRecordDTO the violation record dto
     * @return the boolean
     */
    boolean updatePunishAmount(ViolationRecordDTO violationRecordDTO);

    /**
     * 撤销处罚.
     *
     * @param id the violation record dto
     * @return the boolean
     */
    boolean updateViolationCancel(Long id);

    /**
     * 删除违规惩罚记录
     *
     * @param id the id
     * @return boolean
     */
    boolean delViolationRecord(Long id);

    /**
     * 发送配置收款商户的站内信.
     *
     * @param violationRecordDTO the service order
     * @return the r
     */
    boolean sendConfigPayeeInnerMsg(ViolationRecordDTO violationRecordDTO);

}
